System and methods to improve automated driving utilization

ABSTRACT

A controller is provided to predict potential future engagement or disengagement of an automated driving feature in a vehicle and proactively implement operations to reduce the likelihood of the disengagement or increase the likelihood of the engagement. The controller is configured to: access a model of transfer-of-control events, the transfer-of-control events comprising disengagement and/or engagement transfer-of-control events, the model of transfer-of-control events generated from a crowd-sourced dataset of prior transfer-of-control events and corresponding contexts; identify a transfer-of-control event that has the potential of occurring in the future based on the planned vehicle travel path; determine the likelihood of the identified transfer-of-control event occurring in the future; access, a model of reasons for a transfer-of-control event; identify a potential reason for the identified transfer-of-control event; determine, based on the identified potential reason for transfer-of-control, an action to affect the likelihood of the transfer-of-control event; and cause the action to be implemented.

TECHNICAL FIELD

The technology described in this patent document relates generally toautomated driving features and more particularly to systems and methodsfor maximizing use of automated driving features.

There have been many improvements to vehicles regarding the inclusion ofautomated driving features. Automated driving features may range fromcruise control to fully autonomous driving. Automated driving features,however, are not always used when available and safe to be used. Vehicleoccupants may benefit from increased usage of automated drivingfeatures.

Accordingly, it is desirable to provide systems and methods forimproving automated driving utilization. Furthermore, other desirablefeatures and characteristics of the present invention will becomeapparent from the subsequent detailed description of the invention andthe appended claims, taken in conjunction with the accompanying drawingsand the background of the invention.

SUMMARY

Systems and methods for improving automated driving utilization areprovided. In one embodiment, a controller in a vehicle that isconfigured to predict potential future engagement or disengagement of anautomated driving feature of the vehicle and proactively implementoperations to reduce the likelihood of the disengagement or increase thelikelihood of the engagement is provided. The controller is configuredto: access a model of transfer-of-control events wherein thetransfer-of-control events include disengagement transfer-of-controlevents and/or engagement transfer-of-control events and wherein themodel of transfer-of-control events is generated from a crowd-sourceddataset of previous transfer-of-control events and correspondingcontexts; identify a transfer-of-control event from the model oftransfer-of-control events that has the potential of occurring in thefuture based on the planned travel path of the vehicle; determine thelikelihood of the identified transfer-of-control event occurring in thefuture; access, when the likelihood of the identifiedtransfer-of-control event occurring is greater than a threshold level, amodel of reasons for a transfer-of-control event; identify a potentialreason for the identified transfer-of-control event from the model ofreasons for a transfer-of-control event; determine, based on theidentified potential reason for a transfer-of-control event, an actionto affect the likelihood of the transfer-of-control event; and cause theaction to occur.

In one embodiment, the contexts include attributes used to characterizethe state of a vehicle, its driver, if any, and surroundings at time ofa corresponding transfer-of-control event.

In one embodiment, to identify the controller may be configured toidentify a geographical location of past occurrences of thetransfer-of-control event and the corresponding context.

In one embodiment, to identify a transfer-of-control event that has thepotential of occurring in the future the controller may be configured toidentify a transfer-of-control event that has the potential of occurring20 or 30 minutes into the future.

In one embodiment, to determine the likelihood the controller may beconfigured to determine the likelihood of the identifiedtransfer-of-control event occurring in the future when the vehiclereaches a geographical location associated the identifiedtransfer-of-control event.

In one embodiment, to determine the likelihood the controller may beconfigured to determine the likelihood based on the ratio of pasttransfer-of-control events over non transfer-of-control events withcontexts that are similar to an expected context when the associatedgeographical location may be reached.

In one embodiment, the model of reasons for the transfer-of-controlevent may be generated by clustering past occurrences of thetransfer-of-control event based on context.

In one embodiment, the action may be a mitigating action for mitigatingthe need for an identified disengagement event to occur or anenhancement action for enhancing the likelihood for an identifiedengagement event to occur.

In one embodiment, to determine an action the controller may beconfigured to compute a time frame within which action should occur tobe effective (e.g., not too early or not too late).

In one embodiment, to cause the action to occur the controller may beconfigured to: cause the action to automatically occur when in a firstoperating mode (an automatic mitigation operating mode); cause theaction to be announced to a user via an announcement (e.g., via textualor graphical announcement on a display and/or aural announcement via aspeaker) when in a second operating mode (e.g., a user announcementoperating mode); cause the action to both be announced and toautomatically occur when in a third operating mode (e.g., an automaticmitigation with announcement operating mode); and cause the action toboth be announced and to automatically occur upon user confirmation whenin a fourth operating mode (e.g., a user confirmation operating mode).

In another embodiment, a method for predicting potential futureengagement or disengagement of an automated driving feature of thevehicle and proactively implementing operations to reduce the likelihoodof the disengagement or increase the likelihood of the engagement isprovided. The method includes: accessing a model of transfer-of-controlevents, the transfer-of-control events including disengagementtransfer-of-control events and/or engagement transfer-of-control events,the model of transfer-of-control events generated from a crowd-sourceddataset of previous transfer-of-control events and correspondingcontexts; identifying a transfer-of-control event from the model oftransfer-of-control events that has the potential of occurring in thefuture based on the planned travel path of the vehicle; determining thelikelihood of the identified transfer-of-control event occurring in thefuture; accessing, when the likelihood of the identifiedtransfer-of-control event occurring is greater than a threshold level, amodel of reasons for a transfer-of-control event; identifying apotential reason for the identified transfer-of-control event from themodel of reasons for a transfer-of-control event; determining, based onthe identified potential reason for a transfer-of-control event, anaction to affect the likelihood of the transfer-of-control event; andcausing the action to be implemented.

In one embodiment, accessing a model of transfer-of-control events mayinclude accessing a model of transfer-of-control events from acloud-based server, and accessing a model of reasons for atransfer-of-control event may include accessing a model of reasons for atransfer-of-control event from a cloud-based server.

In one embodiment, the determining the likelihood may includedetermining the likelihood of the identified transfer-of-control eventoccurring in the future when the vehicle reaches a geographical locationassociated the identified transfer-of-control event.

In one embodiment, the determining the likelihood may includedetermining the likelihood based on the ratio of pasttransfer-of-control events over non transfer-of-control events withcontexts that are similar to an expected context when the associatedgeographical location may be reached.

In one embodiment, the model of reasons for the transfer-of-controlevent may be generated by clustering past occurrences of thetransfer-of-control event based on context.

In one embodiment, the action may be a mitigating action for mitigatingthe need for an identified disengagement event to occur or anenhancement action for enhancing the likelihood for an identifiedengagement event to occur.

In one embodiment, the determining may include computing a time frame(e.g., that may be not too early or not too late) within which theaction should occur to be effective.

In one embodiment, the causing an action to occur may include: causingthe action to automatically occur when in a first operating mode (e.g.,an automatic mitigation operating mode); causing the action to beannounced to a user via an announcement (e.g., via textual or graphicalannouncement on a display and/or aural announcement via a speaker) whenin a second operating mode (e.g., a user announcement operating mode);causing the action to both be announced and to automatically occur in athird operating mode (e.g., an automatic mitigation with announcementoperating mode); and causing the action to both be announced and toautomatically occur upon user confirmation in a fourth operating mode(e.g., a user confirmation operating mode).

In one embodiment, the method further includes updating a user model oftransfer-of-control based on user reaction to the announcement, theupdating including recording (e.g., in the cloud) the announcement,vehicle state (e.g., speed and geo location), action, whether thetransfer-of-control event occurred, and reason for transfer-of-control.

In another embodiment, non-transient computer readable media encodedwith programming instructions configurable to cause a processor in avehicle to perform a method is provided. The method includes: accessinga model of transfer-of-control events, the transfer-of-control eventsincluding disengagement transfer-of-control events and/or engagementtransfer-of-control events, the model of transfer-of-control eventsgenerated from a crowd-sourced dataset of previous transfer-of-controlevents and corresponding contexts; identifying a transfer-of-controlevent from the model of transfer-of-control events that has thepotential of occurring in the future based on the planned travel path ofthe vehicle; determining the likelihood of the identifiedtransfer-of-control event occurring in the future; accessing, when thelikelihood of the identified transfer-of-control event occurring isgreater than a threshold level, a model of reasons for atransfer-of-control event; identifying a potential reason for theidentified transfer-of-control event from the model of reasons for atransfer-of-control event; determining, based on the identifiedpotential reason for a transfer-of-control event, an action to affectthe likelihood of the transfer-of-control event; and causing the actionto be implemented.

BRIEF DESCRIPTION OF THE DRAWINGS

The exemplary embodiments will hereinafter be described in conjunctionwith the following drawing figures, wherein like numerals denote likeelements, and wherein:

FIG. 1 is a diagram depicting an example operating scenario involving anexample vehicle capable of automated and manual operating modes, inaccordance with various embodiments;

FIG. 2 is a process flow chart depicting an example process in anexample enhancement controller, in accordance with various embodiments;

FIG. 3 is a block diagram depicting an example operating environment foran example controller, in accordance with various embodiments; and

FIG. 4 is a process flow chart depicting an example process in anexample controller for predicting potential future engagement ordisengagement of an automated driving feature of a vehicle andproactively implementing operations to reduce the likelihood of thedisengagement or increase the likelihood of the engagement, inaccordance with various embodiments.

DETAILED DESCRIPTION

The following detailed description is merely exemplary in nature and isnot intended to limit the application and uses. Furthermore, there is nointention to be bound by any expressed or implied theory presented inthe preceding technical field, background, summary, or the followingdetailed description.

Embodiments of the present disclosure may be described herein in termsof functional and/or logical block components and various processingsteps. It should be appreciated that such block components may berealized by any number of hardware, software, and/or firmware componentsconfigured to perform the specified functions. For example, anembodiment of the present disclosure may employ various integratedcircuit components, e.g., memory elements, digital signal processingelements, logic elements, look-up tables, or the like, which may carryout a variety of functions under the control of one or moremicroprocessors or other control devices. In addition, those skilled inthe art will appreciate that embodiments of the present disclosure maybe practiced in conjunction with any number of systems, and that thesystems described herein is merely exemplary embodiments of the presentdisclosure.

For the sake of brevity, conventional techniques related to signalprocessing, data transmission, signaling, control, machine learningmodels, and other functional aspects of the systems (and the individualoperating components of the systems) may not be described in detailherein. Furthermore, the connecting lines shown in the various figurescontained herein are intended to represent example functionalrelationships and/or physical couplings between the various elements. Itshould be noted that many alternative or additional functionalrelationships or physical connections may be present in an embodiment ofthe present disclosure.

Apparatus, systems, techniques and articles provided herein can predictwhen a user of a vehicle may disengage an automated driving feature inthe future based on learned models of feature usage and proactivelyimplement operations to reduce the likelihood disengagement. Apparatus,systems, techniques and articles disclosed herein can be configured toautomatically change driving control parameters to mitigate/avoidanticipated disengagement. Apparatus, systems, techniques and articlesdisclosed herein can be configured to suggest changes to driving controlparameters to a user and request user confirmation that the suggestedchanges should be implemented. Apparatus, systems, techniques andarticles disclosed herein can also be configured to do both. Apparatus,systems, techniques and articles disclosed herein are configured topredict and interpret the reason for disengagement of an automateddriving feature and implement steps to mitigate this behavior whenpossible. Apparatus, systems, techniques and articles disclosed hereinmay also be configured to predict when a user of a vehicle may want toengage an automated driving feature in the future based on learnedmodels of feature usage and proactively implement operations to increasethe likelihood engagement.

FIG. 1 is a diagram depicting an example operating scenario 100involving an example vehicle 102 capable of automated and manualoperating modes. In this example, the vehicle 102 is traveling in anautonomous driving mode. The vehicle 102 includes an enhancementcontroller 103 (that looks ahead at the travel path of the vehicle 102to determine if conditions exist such that the probability of atransfer-of-control event occurring, such as a disengagement event wherean automated driving feature (e.g., autonomous driving) is disengaged oran engagement event where an automated driving feature (e.g., cruisecontrol), is greater than a predetermined threshold level. In thisexample, the enhancement controller 103 predicts the occurrence of adisengagement transfer-of-control event 104 with a likelihood ofoccurring that is greater than the predetermined threshold level (e.g.,0.6).

The potential transfer-of-control event may be identified from a datasetof transfer-of-control events experienced in the past by the samevehicle or user and/or other vehicles and users for the road on whichthe vehicle is or will travel. The dataset may have been generated viacrowd sourcing wherein vehicles experiencing transfer-of-control eventsin the past have reported their transfer-of-control events to one ormore servers for data collection. In addition to reporting theirtransfer-of control events, the vehicles may have also reported thecontext surrounding the transfer-of-control event. The dataset may bestored, for example, at one or more cloud-based servers or in partonboard the vehicle.

Associated with each transfer-of-control event in the dataset is thecontext under which the transfer-of-control event occurred. The contextmay include the geographical location (e.g., GPS coordinates) at whichthe transfer-of-control event occurred, the speed and acceleration ofthe vehicle at the time of the transfer-of-control event, whether thevehicle was being driven during the day or night, weather conditions(e.g., rain, snow, sunny, cloudy, etc.), the identity of the driver, themood of the driver (as determined from physiological sensors and/orwearable devices), the local curvature of the road, the nature of anymedia being played within the vehicle (e.g., type of music, volume,etc.), whether vehicle had previously been operated on the current road,traffic conditions (e.g., congested, light, etc.), among others.

In this example, the transfer-of-control event 104 occurred undercertain traffic conditions. By comparing the current context (e.g.,traffic conditions) to the context under which the transfer-of-controlevent occurred in the past, a reason 106 for the prediction of atransfer-of-control event 104 can be determined. In this example, thereason 106 is that 90% of drivers disengaged at the location undersimilar traffic conditions.

As a result of the predicted transfer-of-control event 104, theenhancement controller 103 identifies a potential mitigating actionthat, if successful, could dissuade the user from implementing thepredicted transfer-of-control event. In this example, the mitigationcontroller 103 provides an announcement message 108 to a user (e.g.,vehicle occupant) announcing the proposed mitigating action andrequesting user confirmation that the vehicle should perform themitigating action. The announcement may be in the form of a textual orgraphical announcement on a vehicle display and/or an aural announcementvia a speaker. In this example, the announcement is a textualannouncement on a vehicle display that states “You are approaching anintersection with high disengagement rate, would you prefer me to startslowing downs?”

In some embodiments, the enhancement controller 103 may additionallypredict when a user of a vehicle may want to engage an automated drivingfeature in the future based on learned models of feature usage (from thesame or other vehicles and/or users) and proactively implementoperations to increase the likelihood engagement. The enhancementcontroller 103 may predict a potential transfer-of-control event in thefuture based on the planned driving path of the vehicle and identify anenhancement action that, if successful, could persuade the user toimplement the predicted transfer-of-control event. For example, theenhancement controller 103 may identify that many users engage cruisecontrol at a certain location under certain driving conditions, predictthat the vehicle will reach the location under similar drivingconditions, and identify to a user of the vehicle that it may want toengage cruise control at that location.

FIG. 1 also includes a block diagram of the example vehicle 102. Asdepicted in FIG. 1, the vehicle 102 generally includes a chassis 12, abody 14, front wheels 16, and rear wheels 18. The body 14 is arranged onthe chassis 12 and substantially encloses components of the vehicle 200.The body 14 and the chassis 12 may jointly form a frame. The wheels16-18 are each rotationally coupled to the chassis 12 near a respectivecorner of the body 14. The vehicle 102 is depicted in the illustratedembodiment as a passenger car, but other vehicle types, includingmotorcycles, trucks, sport utility vehicles (SUVs), recreationalvehicles (RVs), marine vessels, aircraft, etc., may also be used. Thevehicle 102 is a vehicle capable of being driven autonomously orsemi-autonomously.

The vehicle 102 further includes a propulsion system 20, a transmissionsystem 22, a steering system 24, a brake system 26, a sensor system 28,an actuator system 30, at least one data storage device 32, at least onecontroller 34, and a communication system 36 that is configured towirelessly communicate information to and from other entities 48.

The data storage device 32 stores data for use in automaticallycontrolling the vehicle 102. The data storage device 32 may be part ofthe controller 34, separate from the controller 34, or part of thecontroller 34 and part of a separate system. The controller 34 includesat least one processor 44 and a computer-readable storage device ormedia 46. In various embodiments, controller 34 implements anenhancement controller 103 for predicting transfer-of-control events anddetermining mitigating and/or enhancement actions formitigating/enhancing the likelihood of the predicted transfer-of-controlevent occurring. Although only one controller 34 is shown in FIG. 1,embodiments of the vehicle 102 may include any number of controllers 34that communicate over any suitable communication medium or a combinationof communication mediums and that cooperate to process the sensorsignals, perform logic, calculations, methods, and/or algorithms, andgenerate control signals to automatically control features of thevehicle 102.

The controller 34 includes at least one processor and acomputer-readable storage device or media encoded with programminginstructions for configuring the controller. The processor may be anycustom-made or commercially available processor, a central processingunit (CPU), a graphics processing unit (GPU), an application specificintegrated circuit (ASIC), a field programmable gate array (FPGA), anauxiliary processor among several processors associated with thecontroller, a semiconductor-based microprocessor (in the form of amicrochip or chip set), any combination thereof, or generally any devicefor executing instructions.

The computer readable storage device or media may include volatile andnon-volatile storage in read-only memory (ROM), random-access memory(RAM), and keep-alive memory (KAM), for example. KAM is a persistent ornon-volatile memory that may be used to store various operatingvariables while the processor is powered down. The computer-readablestorage device or media may be implemented using any of a number ofknown memory devices such as PROMs (programmable read-only memory),EPROMs (electrically PROM), EEPROMs (electrically erasable PROM), flashmemory, or any other electric, magnetic, optical, or combination memorydevices capable of storing data, some of which represent executableprogramming instructions, used by the controller. The programminginstructions may include one or more separate programs, each of whichcomprises an ordered listing of executable instructions for implementinglogical functions.

FIG. 2 is a process flow chart depicting an example process 200 in anexample enhancement controller (e.g., enhancement controller 103). Theorder of operation within process 200 is not limited to the sequentialexecution as illustrated in the FIG. 2 but may be performed in one ormore varying orders as applicable and in accordance with the presentdisclosure.

The example process 200 includes predicting a transfer-of-control eventin the future (operation 202). As an example, a transfer-eventprobability value may be computed based on a dataset 203 ofcrowd-sourced transfer-of-control events and a predicted future contextof the vehicle, and the transfer-of-control criterion may includedetermining whether the transfer-event probability value (or a valuederived from the probability value, such as a likelihood ratio) isgreater than a predetermined threshold. More particularly, given a“context” that is characterized by a vector of features f_(i) (e.g,“raining”, “night time”, geographical location, etc.), the probabilityof a transfer as well as the probability of not transferring, givendataset 203 is computed. That is, Pr(f₁, . . . f_(n)|transfer) andPr(f₁, . . . f_(n)|not(transfer)) is computed using, for example, naiveBayesian analysis, as is known in the art, for a time in the future. Thelog-likelihood ρ based on those probabilities, e.g., ρ=Pr(f₁ . . .f_(n)|transfer)/Pr(f₁, . . . f_(n)|not(transfer)) is then computed.

As an example, the probability of a transfer-of-control event in thefuture P(transfer|CurrentState, StateinXminutes=f) may be computed usingthe following algorithm:

Lets set StateinX minutes = StateX First compute for X=minTime toMaxTime, all states StateinXminutes =f from CurrentState All States =null For i=minTime to MaxTime if State=f in i minutes then //compute newlocation of Vehicle given its current speed and geo conditions in iminutes //Compare State to features in f All States += [State,i]AllTransferStates=null For all s=state in AllStates do ifP(s|transfer)/P(s|!transfer) > then AllTransferStates += [s,s.i] SortAllTransferStates in decreasing order of s.i

The dataset 203, in an example case for disengagements may includemultiple recorded cases of disengagements for multiple vehicles. Elementin this dataset may include date, time, vehicle dynamics, geo location,weather, traffic, lane, and others. The dataset 203 may be kept in thecloud or on a server. The dataset 203 may be stored as a table or as agroup of clusters divided by their similarities (e.g., all states withsimilar traffic and vehicle dynamics parameters). Each time a new dataelement is added to the log file in the cloud, the data element can beassociated to the clusters that the data element to which it is mostsimilar or a determination can be made to determine if a new clustershould be created.

The example process 200 includes determining whether the log-likelihoodvalue p is greater than a predetermined threshold (decision 204). Forexample, this may be expressed by the following formula:

$\frac{P\left( {f{transfer}} \right)}{P\left( {f{{transfer}}} \right)} > {\left( \frac{A}{1 - A} \right)\frac{P\left( {{transfer}} \right)}{P({transfer})}} \equiv \rho$

The predetermined threshold could be one of any number of predeterminedvalues such as a value of 0.6. The predetermined threshold may vary,depending upon any number of factors.

If the log-likelihood value p is not greater than a predeterminedthreshold (no at decision 204), then the example process 200 continueswith predicting a transfer-of-control event in the future at operation202. If the log-likelihood value p is greater than a predeterminedthreshold (yes at decision 204), then the example process 200 includescomputing mitigation/enhancement actions (operation 206), such ascomputing new driving settings and when to apply them.

Computing mitigation/enhancement actions include computing a relevanttime interval to change driving settings (operation 208), computing areason for change-of-control (e.g., disengagement or engagement) fromthe data logged in the dataset 203 (operation 210), and choosing anaction to mitigate/enhance reason for change-of-control (operation 212).

Regarding computing a relevant time interval to change driving settings,taking a mitigation/enhancement action too early or too late may beineffective. As an example, a relevant time interval to change drivingsettings may be computed using the following algorithm:

s = first state in AllTransferStates that is not null For s inAllTransferStates set maxImpactTime = s.i with the maximal impact onavoiding disengagement in i minutes from CurrState set minImpactTime =s.i with the lowest impact on avoiding disengagement in i minutes fromCurrState (there is not enough time to make a change if i <minImpactTime) If mode = automatic, return maxImpactTime ; continue withMethod 7 to set values set in Method 5 calculated based on currentstate=State at max Impact Time and Disengagement State is StateX Else ifmode = interactive then call Method 6 with values set in Method 5calculated based on current state = state chosen by policy of timing,disengagement state is StateX.

Regarding computing a reason for disengagement from the data logged inthe dataset 203, data in the dataset 203 may include all case where manydrivers have disengaged in the past including the state of the vehicledynamics, and environment state (e.g., traffic, weather). The dataset203 is used to derive one or more reasons for a disengagement action ina state like StateX similar to one experienced in the past under similarconditions. The reason for disengagement from the data logged in thedataset 203 may be determined as follows:

Find closest group (cluster) of states in data (in the dataset 203)similar to StateX, (similar in traffic, weather, geo location). Namethis closest group G. Analyze data in G to conclude on possible reasonsfor disengagement in states in G. This can be implemented by collectingdata from drivers (labels) (as explained in U.S. Pat. No. 9,798,323,which is incorporated herein by reference). This can be done with expertdata running algorithm or data collected off line. This can be done bydeep learning on the data. This can be done by computing the vehicledynamics reached at StateX and their difference from their normalpattern of driving (to understand that an imminent hard brake could beanticipated)

Regarding choosing an action to mitigate/enhance reason forchange-of-control, after determining the reason for the disengagement,an action to mitigate the reason can be determined. As an example, if ahard brake at a certain location is the reason for disengagement, thenthe mitigating action may be to brake earlier.

After new driver settings and when to apply them are determined, theexample process includes determining whether a notification policyapplies (decision 212). If a notification policy does not apply (no atdecision 212) then the mitigation/enhancement action is applied(operation 216). If a notification policy does apply, then it isdetermined whether an automatic mode of mitigating/enhancement actionapplication applies or an interactive mode of mitigating/enhancementaction application applies (decision 214).

If an automatic mode of operation applies, then the driver is notifiedof the mitigating action and the mitigating action is automaticallyapplied (operation 218). If an automatic mode of operation does notapply, then the driver is notified of the mitigating action and noaction is taken until the driver indicates that the mitigating actionhas been accepted (operation 220).

The example process 200 also includes recording driver action data(operation 222). The driver's actions—change-of-state or nochange-of-state—along with context data are stored (on board the vehicleand/or on a server). The driver action data can be used to generate auser model (224). The user-specific model 224 can be generated toprovide more specific information regarding how the specific user wouldlikely respond to the change-of-state event given certain conditions.When a change-of-state event occurs, data regarding the change-of-stateevent may be recorded in the dataset 203.

FIG. 3 is a block diagram depicting an example operating environment 300for an example controller 302. The example controller 302 is in avehicle and is configured to predict potential future engagement ordisengagement of an automated driving feature of the vehicle andproactively implement operations to reduce the likelihood of thedisengagement or increase the likelihood of the engagement. The examplecontroller 302 includes one or more processors and non-transientcomputer-readable media containing programming instructions. The examplecontroller 302 is configured by the programming instructions on thenon-transient computer readable media. The example controller 302 isconfigured to access a transfer-of-control events model 304 and areasons for transfer-of-control event model 306. Transfer-of-controlevents include disengagement transfer-of-control events (where anautomated driving mode is disengaged, such as when switching fromautonomous driving to manual driving) and/or engagementtransfer-of-control events (where an automated driving mode is engaged,such as switching from manual acceleration control to cruise control).

The transfer-of-control events model 304 can be generated from a dataset308 of previous transfer-of-control events and corresponding contexts.The dataset 308 can be generated from crowd-sourcing techniques wherein,for example, vehicles that experience a transfer-of-control event cantransmit data regarding an experienced transfer-of-control event andcontext data relating to the transfer-of-control event to one or moresites, such as cloud-based server sites, for accumulation and storage.

The contexts includes attributes used to characterize the state of avehicle, its driver, if any, and/or surroundings at time of acorresponding transfer-of-control event. The contexts may include thegeographical location, the speed and acceleration of the vehicle,whether the vehicle may be being driven during the day or night, weatherconditions, the identity of the driver, the mood of the driver, thelocal curvature of the road, the nature of any media being played withinthe vehicle, whether vehicle had previously been operated on the currentroad, and/or traffic conditions.

From the dataset 308, a transfer-of-control events model 304 and areasons for transfer-of-control event model 306 may be generated. Avehicle may locally store some or all of the transfer-of-control eventsmodel 304. The controller 302 may retrieve, when needed, thetransfer-of-control events model 304 from local storage media in thevehicle or from a cloud-based server.

The example controller is configured to identify a transfer-of-controlevent from the transfer-of-control events model 304 that has thepotential of occurring in the future based on the planned travel path ofthe vehicle. To identify, the controller may identify a geographicallocation of past occurrences of the transfer-of-control event and thecorresponding context. To identify a transfer-of-control event that hasthe potential of occurring in the future the controller may beconfigured to identify a transfer-of-control event that has thepotential of occurring during a time frame such as 20 to 30 minutes intothe future.

The example controller is configured to determine the likelihood of theidentified transfer-of-control event occurring in the future. Todetermine the likelihood, the controller may determine the likelihood ofthe identified transfer-of-control event occurring in the future whenthe vehicle reaches a geographical location associated the identifiedtransfer-of-control event and may determine the likelihood based on theratio of past transfer-of-control events over non transfer-of-controlevents with contexts that are similar to an expected context when theassociated geographical location is expected to be reached by thevehicle.

The example controller is configured to access, when the likelihood ofthe identified transfer-of-control event occurring is greater than athreshold level, the reasons for transfer-of-control event model 306 toidentify a potential reason for the identified transfer-of-controlevent. The reasons for transfer-of-control event model 306 may begenerated by applying mathematical techniques such as clustering to pastoccurrences of the transfer-of-control event and their associatedcontext data to identify clusters of past occurrences of thetransfer-of-control event along with their associated context data. Theassociated context data in the clusters may identify one or more reasonsfor the occurrence of the transfer-of-control event. The reasons fortransfer-of-control event model 306 may be accessible via a cloud-basedserver or stored locally in the vehicle.

The example controller 302 is further configured to determine, based onthe identified potential reason for transfer-of-control event, an action310 (e.g., one or more new driver settings) to affect the likelihood ofthe transfer-of-control event and cause the action 310 to beimplemented. In one example, the action 310 may be a mitigating actionto reduce the likelihood of the transfer-of-control event or anenhancement action to improve the likelihood of the transfer-of-controlevent. The reason for a transfer-of-control event could result, in thisexample, from a need for hard braking. The action 310 could be amitigating action such as an action to brake sooner to reduce thelikelihood of hard braking later and to reduce the likelihood of atransfer-of-control event such as disengagement of autonomous driving.To determine an action, the controller may also compute a time frame(that is not too early or not too late) within which the action shouldoccur to be effective.

The example controller 302 is configured to cause themitigating/enhancing action 310 to automatically occur when in a firstoperating mode (e.g., an automatic mitigation operating mode). Theexample controller 302 is configured to cause the mitigating/enhancingaction to be announced (e.g., via textual or graphical announcement on adisplay and/or aural announcement via a speaker) to a user when in asecond operating mode (e.g., a user announcement operating mode). Theexample controller 302 is configured to cause the mitigating/enhancingaction to both be announced and to automatically occur when in a thirdoperating mode (e.g., an automatic mitigation with announcementoperating mode). The example controller 302 is configured to cause themitigating/enhancing action to both be announced and to automaticallyoccur upon user confirmation when in a fourth operating mode (e.g., auser confirmation operating mode).

The example controller 302 is configured to generate/update auser-specific transfer-of-control model 312 based on user reaction to anotification. The updating may include recording (e.g., at a cloud-basedserver) the notification, vehicle state (e.g., speed and geographicallocation), mitigating/enhancement action, whether transfer-of-controlevent occurred, and reason for transfer-of-control event. When auser-specific transfer-of-control model 312 is available, it can beaccessed for use in determining the likelihood of a transfer-of-controlevent, the reason for a transfer-of-control event and/or action toaffect the likelihood of the transfer-of-control event.

FIG. 4 is a process flow chart depicting an example process 400 in anexample controller for predicting potential future engagement ordisengagement of an automated driving feature of a vehicle andproactively implementing operations to reduce the likelihood of thedisengagement or increase the likelihood of the engagement. The order ofoperation within process 400 is not limited to the sequential executionas illustrated in the figure, but may be performed in one or morevarying orders as applicable and in accordance with the presentdisclosure.

The example process 400 includes accessing a model oftransfer-of-control events (operation 402). The transfer-of-controlevents may include disengagement transfer-of-control events and/orengagement transfer-of-control events. The model of transfer-of-controlevents may have been generated from a crowd-sourced dataset of previoustransfer-of-control events and corresponding contexts.

The contexts includes attributes used to characterize the state of avehicle, its driver, if any, and/or surroundings at time of acorresponding transfer-of-control event. The contexts may include thegeographical location, the speed and acceleration of the vehicle,whether the vehicle may be being driven during the day or night, weatherconditions, the identity of the driver, the mood of the driver, thelocal curvature of the road, the nature of any media being played withinthe vehicle, whether vehicle had previously been operated on the currentroad, and/or traffic conditions.

The example process 400 includes identifying a transfer-of-control eventfrom the model of transfer-of-control events that has the potential ofoccurring in the future based on the planned travel path of the vehicle(operation 404) and determining the likelihood of the identifiedtransfer-of-control event occurring in the future (operation 406). Theidentifying may include identifying a geographical location of pastoccurrences of the transfer-of-control event and the correspondingcontext. The identifying a transfer-of-control event that has thepotential of occurring in the future may include identifying atransfer-of-control event that has the potential of occurring during atime frame, such as 20 to 30 minutes into the future.

Determining the likelihood may include determining the likelihood of theidentified transfer-of-control event occurring in the future when thevehicle reaches a geographical location associated the identifiedtransfer-of-control event and may include determining the likelihoodbased on the ratio of past transfer-of-control events over nontransfer-of-control events with contexts that are similar to an expectedcontext when the associated geographical location is expected to bereached by the vehicle.

The example process 400 includes accessing, when the likelihood of theidentified transfer-of-control event occurring is greater than athreshold level, a model of reasons for a transfer-of-control event(operation 408) and identifying a potential reason for the identifiedtransfer-of-control event from the model of reasons for atransfer-of-control event (operation 410). The model of reasons fortransfer-of-control may be generated by applying mathematical techniquessuch as clustering to past occurrences of the transfer-of-control eventand their associated context data to identify clusters of pastoccurrences of the transfer-of-control event along with their associatedcontext data. The associated context data in the clusters may identifyone or more reasons for the occurrence of the transfer-of-control event.The model of reasons for transfer-of-control may be accessible via acloud-based server or stored locally in the vehicle.

The example process 400 includes determining, based on the identifiedpotential reason for change-of-control, an action to undertake to affectthe likelihood of the change-of-control (operation 412) and causing theaction to be undertaken (operation 414). The action may be a mitigatingaction to reduce the likelihood of the transfer-of-control event or anenhancement action to improve the likelihood of the transfer-of-controlevent. The reason for a transfer-of-control event could result, forexample, from a need for hard braking. The action could be a mitigatingaction such as an action to brake sooner to reduce the likelihood ofhard braking later and to reduce the likelihood of a transfer-of-controlevent such as disengagement of autonomous driving.

The determining may include computing a time frame (e.g., not too earlyor not too late) within which the action should occur to be effective.The determining may include determining the likelihood of the identifiedtransfer-of-control event occurring in the future when the vehiclereaches a geographical location associated the identifiedtransfer-of-control event. The determining the likelihood may includedetermining the likelihood based on the ratio of pasttransfer-of-control events over non transfer-of-control events withcontexts that are similar to an expected context when the associatedgeographical location may be reached.

The mitigating/enhancing action may automatically occur in a firstoperating mode (e.g., an automatic mitigation operating mode). Themitigating/enhancing action may be announced (e.g., via textual orgraphical announcement on a display and/or aural announcement via aspeaker) to a user in a second operating mode (e.g., a user announcementoperating mode). The mitigating/enhancing action may both be announcedand caused to automatically occur in a third operating mode (e.g., anautomatic mitigation with announcement operating mode). Themitigating/enhancing action may both be announced and caused toautomatically occur upon user confirmation in a fourth operating mode(e.g., a user confirmation operating mode).

The foregoing outlines features of several embodiments so that thoseskilled in the art may better understand the aspects of the presentdisclosure. Those skilled in the art should appreciate that they mayreadily use the present disclosure as a basis for designing or modifyingother processes and structures for carrying out the same purposes and/orachieving the same advantages of the embodiments introduced herein.Those skilled in the art should also realize that such equivalentconstructions do not depart from the spirit and scope of the presentdisclosure, and that they may make various changes, substitutions, andalterations herein without departing from the spirit and scope of thepresent disclosure.

What is claimed is:
 1. A controller in a vehicle that is configured topredict potential future engagement or disengagement of an automateddriving feature of the vehicle and proactively implement operations toreduce the likelihood of the disengagement or increase the likelihood ofthe engagement, the controller configured to: access a model oftransfer-of-control events, the transfer-of-control events comprisingdisengagement transfer-of-control events and/or engagementtransfer-of-control events, the model of transfer-of-control eventsgenerated from a crowd-sourced dataset of previous transfer-of-controlevents and corresponding contexts; identify a transfer-of-control eventfrom the model of transfer-of-control events that has the potential ofoccurring in the future based on the planned travel path of the vehicle;determine the likelihood of the identified transfer-of-control eventoccurring in the future; access, when the likelihood of the identifiedtransfer-of-control event occurring is greater than a threshold level, amodel of reasons for a transfer-of-control event; identify a potentialreason for the identified transfer-of-control event from the model ofreasons for a transfer-of-control event; determine, based on theidentified potential reason for change-of-control, an action to affectthe likelihood of the change-of-control; and cause the action to beimplemented.
 2. The controller of claim 1, wherein the contexts compriseattributes used to characterize the state of a vehicle, its driver, ifany, and surroundings at time of a corresponding transfer-of-controlevent.
 3. The controller of claim 1, wherein to identify the controlleris configured to identify a geographical location of past occurrences ofthe transfer-of-control event and the corresponding context.
 4. Thecontroller of claim 1, wherein to identify a transfer-of-control eventthat has the potential of occurring in the future the controller isconfigured to identify a transfer-of-control event that has thepotential of occurring 20 or 30 minutes into the future.
 5. Thecontroller of claim 1, wherein to determine the likelihood thecontroller is configured to determine the likelihood of the identifiedtransfer-of-control event occurring in the future when the vehiclereaches a geographical location associated the identifiedtransfer-of-control event.
 6. The controller of claim 5, wherein todetermine the likelihood the controller is configured to determine thelikelihood based on the ratio of past transfer-of-control events overnon transfer-of-control events with contexts that are similar to anexpected context when the associated geographical location is reached.7. The controller of claim 1, wherein the model of reasons for atransfer-of-control event is generated by clustering past occurrences ofthe transfer-of-control event based on context.
 8. The controller ofclaim 1, wherein the action is a mitigating action for mitigating theneed for an identified disengagement event to occur or an enhancementaction for enhancing the likelihood for an identified engagement eventto occur.
 9. The controller of claim 1, wherein to determine an actionthe controller is configured to compute a time frame within which actionshould occur to be effective.
 10. The controller of claim 1, wherein tocause the action to occur the controller is configured to: cause theaction to automatically occur when in a first operating mode; cause theaction to be announced to a user via an announcement when in a secondoperating mode; cause the action to both be announced and toautomatically occur when in a third operating mode; and cause the actionto both be announced and to automatically occur upon user confirmationwhen in a fourth operating mode.
 11. A method for predicting potentialfuture engagement or disengagement of an automated driving feature ofthe vehicle and proactively implementing operations to reduce thelikelihood of the disengagement or increase the likelihood of theengagement, the method comprising: accessing a model oftransfer-of-control events, the transfer-of-control events comprisingdisengagement transfer-of-control events and/or engagementtransfer-of-control events, the model of transfer-of-control eventsgenerated from a crowd-sourced dataset of previous transfer-of-controlevents and corresponding contexts; identifying a transfer-of-controlevent from the model of transfer-of-control events that has thepotential of occurring in the future based on the planned travel path ofthe vehicle; determining the likelihood of the identifiedtransfer-of-control event occurring in the future; accessing, when thelikelihood of the identified transfer-of-control event occurring isgreater than a threshold level, a model of reasons for atransfer-of-control event; identifying a potential reason for theidentified transfer-of-control event from the model of reasons for atransfer-of-control event; determining, based on the identifiedpotential reason for a transfer-of-control event, an action to affectthe likelihood of the transfer-of-control event; and causing the actionto be implemented.
 12. The method of claim 11, wherein accessing a modelof transfer-of-control events comprises accessing a model oftransfer-of-control events from a cloud-based server, and accessing amodel of reasons for a transfer-of-control event comprises accessing amodel of reasons for a transfer-of-control event from a cloud-basedserver
 13. The method of claim 11, wherein the determining thelikelihood comprises determining the likelihood of the identifiedtransfer-of-control event occurring in the future when the vehiclereaches a geographical location associated the identifiedtransfer-of-control event.
 14. The method of claim 11, wherein thedetermining the likelihood comprises determining the likelihood based onthe ratio of past transfer-of-control events over nontransfer-of-control events with contexts that are similar to an expectedcontext when the associated geographical location is reached.
 15. Themethod of claim 11, wherein the model of reasons for thetransfer-of-control event is generated by clustering past occurrences ofthe transfer-of-control event based on context.
 16. The method of claim11, wherein the action is a mitigating action for mitigating the needfor an identified disengagement event to occur or an enhancement actionfor enhancing the likelihood for an identified engagement event tooccur.
 17. The method of claim 11, wherein the determining comprisescomputing a time frame within which the action should occur to beeffective.
 18. The method of claim 11, wherein the causing an action tooccur comprises: causing the action to automatically occur when in afirst operating mode; causing the action to be announced to a user viaan announcement when in a second operating mode; causing the action toboth be announced and to automatically occur in a third operating mode;and causing the action to both be announced and to automatically occurupon user confirmation in a fourth operating mode.
 19. The method ofclaim 18, further comprising updating a user model oftransfer-of-control based on user reaction to the announcement, theupdating including recording the announcement, vehicle state, action,whether a transfer-of-control event occurred, and reason for thetransfer-of-control event.
 20. Non-transient computer readable mediaencoded with programming instructions configurable to cause a processorin a vehicle to perform a method, the method comprising: accessing amodel of transfer-of-control events, the transfer-of-control eventscomprising disengagement transfer-of-control events and/or engagementtransfer-of-control events, the model of transfer-of-control eventsgenerated from a crowd-sourced dataset of previous transfer-of-controlevents and corresponding contexts; identifying a transfer-of-controlevent from the model of transfer-of-control events that has thepotential of occurring in the future based on the planned travel path ofthe vehicle; determining the likelihood of the identifiedtransfer-of-control event occurring in the future; accessing, when thelikelihood of the identified transfer-of-control event occurring isgreater than a threshold level, a model of reasons for atransfer-of-control event; identifying a potential reason for theidentified transfer-of-control event from the model of reasons for atransfer-of-control event; determining, based on the identifiedpotential reason for a transfer-of-control event, an action to affectthe likelihood of the transfer-of-control event; and causing the actionto be implemented.